package cn.mill.common.data;

import java.io.Serializable;
import java.lang.reflect.Type;

import cn.mill.common.annotation.Property;

public class Item implements Serializable {
	
	private static final long serialVersionUID = -1385850711267598596L;
	
	private Property property;
	
	private String name;
	
	private Type type;
	
	private Object value;
	
	public Item() {
		
	}
	
	public Item(Property property, String name, Type type, Object value) {
		this.property = property;
		this.name = name;
		this.type = type;
		this.value = value;
	}
	
	public Property getProperty() {
		return property;
	}
	
	public void setProperty(Property property) {
		this.property = property;
	}
	
	public String getName() {
		return name;
	}
	
	public void setName(String name) {
		this.name = name;
	}
	
	public Type getType() {
		return type;
	}
	
	public void setType(Type type) {
		this.type = type;
	}
	
	public Object getValue() {
		return value;
	}
	
	public void setValue(Object value) {
		this.value = value;
	}
	
	@Override
	public String toString() {
		return "Item [property=" + property + ", name=" + name + ", type=" + type + ", value=" + value + "]";
	}
}
